Здравствуйте, ув. сообщество. Нужна помощь. Есть форма обратной связи банально простая.
<form id="topform">
<div class="form-group">
<input type="text" class="form-control" name="name" placeholder="Ваше имя">
</div>
<div class="form-group">
<input type="number" class="form-control" name="phone" id="" placeholder="Ваш телефон">
</div>
<button type="submit" class="btn btn-primary">Расчитать стоимость</button>
</form>
Так же есть аjax скрипт который обрабатывает данные с формы и отправляет их в файл который отвечает за отправку письма
$(document).ready(function(){
$("#topform").submit(function() { //устанавливаем событие отправки для формы с class=sendform
var form_data = $(this).serialize(); //собераем все данные из формы
$.ajax({
type: "POST", //Метод отправки
url: "send.php", //путь до php фаила отправителя
data: form_data
})
.done(function() {
console.log("success");
})
.fail(function() {
console.log("error");
})
.always(function() {
console.log("complete");
});
});
});
Форма отправляется, сообщения приходтя на почту. Но вот собственно в чём проблема:
1) В консоле показывает что срабатывает действие .fail и .always. По поводу .done - XHR failed loading: POST - ответ.
2) После отправки самой формы меня перекидывет в начало страницы.
3) В url дописываются мои данные: ?name=test&phone=1234.
По поводу последних двух пунктов не уверен, может так и должно быть, но хотелось бы чтобы я оставался на уровне формы отправки, и url был пустой.
За ранее спасибо за помощь.